// pages/message/message.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    socketOpen: false,
    messages: []
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
// 创建 WebSocket 连接
const socket = wx.connectSocket({
  url: 'ws://localhost:3200/message/chat'
});

// 监听 WebSocket 连接打开事件
socket.onOpen(() => {
  this.setData({ socketOpen: true });
  console.log('WebSocket 已连接');
});

// 监听 WebSocket 接收到服务器的消息事件
socket.onMessage((message) => {
  console.log('收到服务器消息：', message);
  this.setData({
    messages: [...this.data.messages, message.data]
  });
});

// 监听 WebSocket 错误事件
socket.onError((error) => {
  console.error('WebSocket 错误：', error);
});

// 监听 WebSocket 关闭事件
socket.onClose(() => {
  this.setData({ socketOpen: false });
  console.log('WebSocket 已关闭');
});
  },
// 发送消息的方法
sendMessage: function (e) {
  if (this.data.socketOpen) {
    wx.sendSocketMessage({
      data: e.detail.value.message,
      success: () => {
        console.log('消息发送成功');
      },
      fail: (error) => {
        console.error('消息发送失败：', error);
      }
    });
  } else {
    wx.showToast({
      title: 'WebSocket 未连接',
      icon: 'none'
    });
  }
},
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})